Integration Testing of Software Product Lines Using Compositional Symbolic Execution

نویسندگان

  • Jiangfan Shi
  • Myra B. Cohen
  • Matthew B. Dwyer
چکیده

Software product lines are families of products defined by feature commonality and variability, with a well-managed asset base. Recent work in testing of software product lines has exploited similarities in different development phases to reuse shared assets and reduce test effort. The use of feature dependence graphs has also been employed, and there has been some work that aims to reduce duplication of partial products during integration testing, but less that focuses on code level analysis of dataflow between features. In this paper we present a compositional symbolic execution technique that works in concert with a feature dependence graph to extract the set of possible interaction trees in a product family. It then composes these to incrementally and symbolically analyze feature interactions. We experiment with two product lines and determine that our technique can reduce the overall number of interactions that must be considered during testing, and requires less time to run than a traditional directed symbolic execution technique.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Compositional Symbolic Execution through Program Specialization

Scalability is a major challenge in symbolic execution. The large number of paths that need to be explored and the large size of the constraints that must be carried often compromise the effectiveness of symbolic execution for software testing in practice. Compositional symbolic execution aims to alleviate these scalability issues by executing the methods of a program separately, stowing their ...

متن کامل

Exhaustive Test-case Generation using Symbolic Execution

Software testing has been one of the major challenges in the development of software for enterprise systems because it accounts for 30% to 50% of the total development cost required. Meanwhile, such testing has become increasingly important, because the upcoming paradigm for information and communications technology (ICT) system development, such as test-driven development and continuous integr...

متن کامل

Demand-Driven Compositional Symbolic Execution

We discuss how to perform symbolic execution of large programs in a manner that is both compositional (hence more scalable) and demand-driven. Compositional symbolic execution means finding feasible interprocedural program paths by composing symbolic executions of feasible intraprocedural paths. By demand-driven, we mean that as few intraprocedural paths as possible are symbolically executed in...

متن کامل

Incremental Compositional Dynamic Test Generation

Dynamic test generation consists of running a programwhile simultaneously executing the program symbolically in order to gather constrains on inputs from conditional statements encountered along the execution. Those constraints are then systematically negated and solved with a constraint solver, generating new test inputs to exercise different execution paths of the program. This process is rep...

متن کامل

Statically Validating Must Summaries for Incremental Compositional Dynamic Test Generation

Compositional dynamic test generation can achieve significant scalability by memoizing symbolic execution sub-paths as test summaries. In this paper, we formulate the problem of statically validating symbolic test summaries against code changes. Summaries that can be proved still valid using a static analysis of a new program version do not need to be retested or recomputed dynamically. In the ...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2012